<?
//$array['table']  表名   最好后面加个匿名 as 

//$array['left_table'][]  如果用了连表 必须表名后面加上 as o 之类 加上 on的条件 ，加多一个表就复制多一份

//$array['left_table_on'][]   连表on的条件  一定要写

//$array['items'] 查询字段

//$array['count'] 统计字段 

//$array['count_as_name'] 统计字段匿名

//$array['sum'] 求和字段 

//$array['sum_as_name'] 求和字段匿名 

//$array['where'] 条件 

//$array['group'] 如果需要按照统计或者求和的计算， 请写上它们的匿名     ，字段的话 直接写上去原字段名字，如多表的  请带上表名 a.date

//$array['sort'] 排序字段

//$array['by'] 排序字段asc 或 desc

//$array['limit'] 数量

//$sum_money = array();
//
//$sum_money['table'] = 'case as c';
//
//$sum_money['items'] = 'c.unit';
//
//$sum_money['sum'] = 'c.sum';
//
//$sum_money['sum_as_name'] = 'sum_total';
//
//$sum_money['group'] = 'c.unit';
//
//$sum_money['sort'] = 'sum_total';
//
//$sum_money['by'] = 'desc';
//
//$sum_money['limit'] = 5;

//count_sum_group_sory_by($sum_money);

function count_sum_group_sory_by($array)
{
	
	$items_sql = '';
	
	if($array['items'] == '' ){
		$items_sql .= ' * ';
	}
	else{
		$items_sql .= $array['items'];
	}
	
	if($array['count'] != '' ){
		
		if($items_sql != '' ){
			$items_sql.= ','; 
		}
		if($array['count_as_name'] != ''){
			$items_sql .= ' count('.$array['count'].') as '.$array['count_as_name'];
		}
		else{
			$items_sql .= ' count('.$array['count'].') ';
		}
		
	}
	
	if($array['sum'] != '' ){
		
		if($items_sql != '' ){
			$items_sql.= ','; 
		}
		
		if($array['sum_as_name'] != ''){
			$items_sql .= ' sum('.$array['sum'].') as '.$array['sum_as_name'];
		}
		else{
			$items_sql .= ' sum('.$array['sum'].') ';
		}
		
	}
	
	$left_table_sql = '';
	if(!empty($array['left_table']) ){
		
		foreach($array['left_table'] as $key=>$val){
		
			$left_table_sql.= ' left join ' . $val . ' on  '.$array['left_table_on'][$key] ;
		
		}		
	}
	
	$where_sql = '';
	if($array['where'] != '' ){
		$where_sql = ' WHERE  1 and '.$array['where'];
	}

	$group_sql = '';
	if($array['group'] != '' ){
		$group_sql = ' GROUP BY  '.$array['group'];
	}
	
	$order_sql = '';
	
	if($array['sort'] != '' ){
		$order_sql = ' ORDER BY  '.$array['sort'].'  '.$array['by'];
	}
	
	$limit_sql = '';
	
	if($array['limit'] != '' ){
		
		$limit_sql = ' limit '.$array['limit'];
		
	}
	
	$table = $array['table'];

	$sqlstr=" select $items_sql from ".$table." $left_table_sql $where_sql $group_sql $order_sql  $limit_sql";
	$result = mysql_query($sqlstr);
	
	$list = array();
	
	while ($row = mysql_fetch_assoc($result)) {
		
		$list[] = $row;
		
	}
	
	return $list;

}
?>